<template>
	<!-- #ifdef APP-NVUE -->
	<cell>
		<!-- #endif -->
		<view class="uni-list-ad">
			<view
				v-if="borderShow"
				:class="{
					'uni-list--border': border,
					'uni-list-item--first': isFirstChild,
				}"
			></view>
			<ad
				style="
					width: 200px;
					height: 300px;
					border-width: 1px;
					border-color: red;
					border-style: solid;
				"
				adpid="1111111111"
				unit-id=""
				appid=""
				apid=""
				type="feed"
				@error="aderror"
				@close="closeAd"
			></ad>
		</view>
		<!-- #ifdef APP-NVUE -->
	</cell>
	<!-- #endif -->
</template>

<script>
// #ifdef APP-NVUE
const dom = uni.requireNativePlugin('dom')
// #endif
export default {
	name: 'UniListAd',
	props: {
		title: {
			type: String,
			default: '',
		},
	},
	// inject: ['list'],
	data() {
		return {
			isFirstChild: false,
			border: false,
			borderShow: true,
		}
	},

	mounted() {
		this.list = this.getForm()
		if (this.list) {
			if (!this.list.firstChildAppend) {
				this.list.firstChildAppend = true
				this.isFirstChild = true
			}
			this.border = this.list.border
		}
	},
	methods: {
		/**
		 * 获取父元素实例
		 */
		getForm(name = 'uniList') {
			let parent = this.$parent
			let parentName = parent.$options.name
			while (parentName !== name) {
				parent = parent.$parent
				if (!parent) return false
				parentName = parent.$options.name
			}
			return parent
		},
		aderror(e) {
			console.log('aderror: ' + JSON.stringify(e.detail))
		},
		closeAd(e) {
			this.borderShow = false
		},
	},
}
</script>

<style lang="scss">
.uni-list-ad {
	position: relative;
	border: 1px red solid;
}

.uni-list--border {
	position: relative;
	padding-bottom: 1px;
	/* #ifdef APP-PLUS */
	border-top-color: $uni-border-color;
	border-top-style: solid;
	border-top-width: 0.5px;
	/* #endif */
	margin-left: $uni-spacing-row-lg;
}

/* #ifndef APP-NVUE */
.uni-list--border:after {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 1px;
	content: '';
	-webkit-transform: scaleY(0.5);
	transform: scaleY(0.5);
	background-color: $uni-border-color;
}

.uni-list-item--first:after {
	height: 0px;
}

/* #endif */
</style>
